<%@page import="com.glowdayz.glowmee.dao.RegisterDAO"%>
<%@page import="javax.mail.MessagingException"%>
<%@page import="javax.mail.Transport"%>
<%@page import="javax.mail.internet.MimeUtility"%>
<%@page import="javax.mail.internet.InternetAddress"%>
<%@page import="javax.mail.internet.MimeMessage"%>
<%@page import="javax.mail.Message"%>
<%@page import="javax.mail.Session"%>
<%@page import="com.glowdayz.common.SMTPAuthenticator"%>
<%@page import="java.util.Properties"%>
<%@page import="com.glowdayz.common.DBHandler"%>
<%@page import="com.glowdayz.common.ApiHandler"%>
<%@page import="com.glowdayz.common.ApiHandler.XmlData"%>
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/xml; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page trimDirectiveWhitespaces="true"%>
<%
	DBHandler.getInstance().connect();
	ApiHandler web = new ApiHandler(request, out, "JSPglowmee");
	String eMail = web.getValue("eMail");
	int count = DBHandler.getInstance().getCount("register", "idRegister", "eMail='" + eMail + "'");

	if (count < 1) {
		DBHandler.getInstance().disconnect();
		web.result(null, "해당 이메일이 존재하지 않습니다.");
		return;
	}
	
	String pw = RegisterDAO.getInstance().requestPw(eMail);

	String host = "smtp.gmail.com";//smtp 서버
	String subject = "글로우미 비밀번호 변경 안내입니다.";
	String from = "samulman@glowmee.com"; //보내는 메일
	String fromName = "글로우미";
	String to = eMail;
	String content = "안녕하세요.<br/>글로우미 입니다.<br/><br/>임시 비밀번호가 " + pw + 
			"으로 설정되었습니다.<br/><br/>로그인 이후 비밀번호를 변경해 주세요.";
	
	try{
	    // 프로퍼티 값 인스턴스 생성과 기본세션(SMTP 서버 호스트 지정)
	    Properties props = new Properties();
	    
	    // G-Mail SMTP 사용시
	    props.put("mail.smtp.starttls.enable","true");
	    props.put("mail.transport.protocol", "smtp");
	    props.put("mail.smtp.host", host);
	    props.setProperty("mail.smtp.socketFactory.class","javax.net.ssl.SSLSocketFactory");
	    props.put("mail.smtp.port", "465");
	    // props.put("mail.smtp.user", from);
	    props.put("mail.smtp.auth", "true");
	    
	    SMTPAuthenticator auth = new SMTPAuthenticator("samulman@glowmee.com", "glowdayz");
	    
	    Session mailSession = Session.getDefaultInstance(props, auth);
	    
	    Message msg = new MimeMessage(mailSession);
	    msg.setFrom(new InternetAddress(from, MimeUtility.encodeText(fromName,"UTF-8","B")));//보내는 사람 설정
	    InternetAddress[] address = {new InternetAddress(to)};
	    
	    msg.setRecipients(Message.RecipientType.TO, address);//받는 사람설정
	    
	    msg.setSubject(subject);// 제목 설정
	    msg.setSentDate(new java.util.Date());// 보내는 날짜 설정
	    msg.setContent(content,"text/html;charset=euc-kr"); // 내용 설정 (HTML 형식)
	    
	    Transport.send(msg); // 메일 보내기
	    
	    //System.out.println("메일 발송을 완료하였습니다.");
	} catch ( MessagingException ex ) {
		DBHandler.getInstance().disconnect();
	    //System.out.println("mail send error : " + ex.getMessage());
	} catch ( Exception e ) {
		DBHandler.getInstance().disconnect();
	    //System.out.println("error : " + e.getMessage());
	}
	
	DBHandler.getInstance().disconnect();
	ArrayList<XmlData> list = new ArrayList<XmlData>();
	web.result("SUCCESS", "메일이 전송되었습니다.", list);
%>